Interpolate Subroutine

public subroutine Interpolate(network, method, near, idw_power, anisotropy, varmodel, lags, maxlag, grid, devst)

interpolate site data to space

Arguments

Type IntentOptional Attributes Name
type(ObservationalNetwork), intent(in) :: network
integer(kind=short), intent(in) :: method
integer(kind=short), intent(in) :: near
real(kind=float), intent(in) :: idw_power
integer(kind=short), intent(in) :: anisotropy
integer(kind=short), intent(in) :: varmodel
integer(kind=short), intent(in) :: lags
real(kind=float), intent(in) :: maxlag
type(grid_real), intent(inout) :: grid
type(grid_real), intent(inout) :: devst

Source Code

SUBROUTINE Interpolate &
!
(network, method, near, idw_power, anisotropy, varmodel, lags, maxlag, grid, devst)

IMPLICIT NONE

!arguments with intent in:
TYPE (ObservationalNetwork), INTENT(IN) :: network
INTEGER (KIND = short),      INTENT(IN) :: method
INTEGER (KIND = short),      INTENT(IN) :: near
REAL (KIND = float),         INTENT(IN) :: idw_power
INTEGER (KIND = short),      INTENT(IN) :: anisotropy
INTEGER (KIND = short),      INTENT(IN) :: varmodel
INTEGER (KIND = short),      INTENT(IN) :: lags
REAL (KIND = float),         INTENT(IN) :: maxlag

!arguments with intent inout:
TYPE (grid_real), INTENT(INOUT) :: grid 
TYPE (grid_real), INTENT(INOUT) :: devst       

!------------end of declaration------------------------------------------------


SELECT CASE (method)
    CASE (1) !thiessen
		    CALL NearestNeighbor (network = network, &
                    grid = grid )
    CASE (2) !IDW
        CALL IDW (network = network, &
                  grid = grid, &
                  method = 1, &
                  power = idw_power, &
                  near = near)
    CASE (3) !Kriging
        CALL Krige (sitedata = network, &
                        anisotropy = anisotropy, &
                        nlags = lags, &
                        maxlag = maxlag, &
                        neighbors = near, &
                        varModel = varmodel, &
                        grid = grid, &
                        gridvar = devst )
END SELECT

RETURN
END SUBROUTINE Interpolate